home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Skunkware 5
/
Skunkware 5.iso
/
src
/
X11
/
xanim2700
/
README
< prev
next >
Wrap
Text File
|
1995-07-31
|
12KB
|
290 lines
<<<< WARNING, THIS IS AN EXPERIMENTAL RELEASE >>>>
IF YOU HAVE TROUBLES WITH THIS RELEASE AND YOU DON'T
HAVE THE TIME TO DEBUG IT, YOU'LL PROBABLY WANT TO
BACK OFF TO REV 2.69.7.8*.
This release contains experimental code that forks off a new process
in order to handle the audio stream. It uses pipe(), fork() and
select() to create this process and setup communication between
the parent video process and the child audio process. I'm working
on eliminating the need for select().
Having a separate audio process will prevent cpu intensive video
codecs(like jpeg and mpeg) from causing starvation of audio device(this
definitely did occur with the prior revs under heavy loads). It
also prevents audio device blocking from affecting video.
WARNING: It's possible that the child process will live on if the
parent process core dumps. In this release I've implemented some
BOFL(breath of life) from parent to child, so if parent dies, the
child should die within 5 to 10 seconds, so I'm 99% certain the child
won't survive for very long. But if not, you should be
familiar with "ps" and "kill" in order to find and terminate the
child and thereby free up the audio device.
It has been compiled and tested on a Sparc 10 running SunOS 4.1.3 and X11R5.
I am very interested in hearing about how this ports to other machines
and what needed to be done, if anything. I'm also interested in how
well the video/audio stays in sync, etc.
I try to answer all email, but not all messages have correct return
addresses. Also, please mention which Rev of XAnim and what machine
you have for bug reports, etc.
Thanks,
Mark
---
podlipec@wellfleet.com
podlipec@baynetworks.com
podlipec@shell.portal.com
NOTE: see compile.help for compiling information.
--------------------------------------------------------------
What's Supported
--------------------------------------------------------------
XAnim supports the following AVI/Quicktime Audio Codecs:
AVI 8 and 16 bit RAW(PCM) mono/stereo.
AVI ADPCM is supported(mono only for now).
Quicktime 8 and 16 bit RAW(PCM) mono/stereo.
Quicktime 8 and 16 bit TWOS(signed PCM) mono/stereo.
Quicktime MAC6 is *NOT* supported.
XAnim supports audio on the following machines:
Sun Sparcs
NEC EWS workstations
Sony NEWS 5000 series workstations
SGI Indigo
PC with soundcards running unix/linux/QNX
Any machine running AudioFile(AF)
Any machine(or Xterminal) running Net Audio (NAS)
HP 9000/715 - sort of working - still has problems.
IBM AIX S6000 machines with audio.
DEC Alpha workstations running Multimedia Services
--------------------------------------------------------------
Generic Bug's
--------------------------------------------------------------
+ Remote Control Window colors not selectable.
+ HP support pseudo functional. Still needs a lot of work.
+ The NAS xanim audio code is new and has problems when you stop/restart
it(echoing). I'm going to look into debugging it before backing it out.
--------------------------------------------------------------
New(or Fixes) to 2.70.0
--------------------------------------------------------------
+ Makefile partitioned a litte better and hopefully makes
configuration easier.
+ WAV and AU audio only files now work(by creating fake anim).
+ Added Sun AU audio file support
+ QT: greyscale colormap fix with +CF4 option.
+ AUDIO: DEC Multimedia Services added by Tom Morris.
+ AUDIO: NetBSD audio support by Roland C Dowdeswell.
+ AUDIO: Sony audio patch for SVR4/NEWS-OS 6.x by Takashi Hagiwara
+ Acorn Replay Movie support.
+ Parallax Motion JPEG with ULAW audio support.
+ Keyboard commands now work in Remote Control window as well as
animation window.
--------------------------------------------------------------
New(or Fixes) to 2.69.7.8a
--------------------------------------------------------------
+ Radius Cinepak support removed by request from Radius(hopefully
temporary).
--------------------------------------------------------------
New(or Fixes) to 2.69.7.8
--------------------------------------------------------------
+ fixed bad core dump bug in some audio section. overwriting
a buffer.
+ SGI: syncing problem fixed. Audio was block and preventing
video from be able to play at speed.
+ A handful of minor bugs where fixed in the MPEG routines.
Two caused corruption and one prevented bottom part of
screen from being drawn with certain resolutions.
+ MPG: wasn't properly flushing bits after a new quant scale
+ MPG: if height > bug, was truncating bottom of image.
+ MPG: spurious warning messages(DCT-A and DCT-B err) removed.
+ AVI: RGB depth 24 support added.
+ AVI: XMPG support added. This is the Editable MPEG Video
Codec and if the spec matches the sample I have, it's
a Kludge. The AVI Headers DON'T match(as in resolution and
proper audio/video timing) the MPEG SEQ header which looks
to have the correct info.
+ AVI: support for "pads" streams(or rather tolerance for).
+ AUDIO: HP RAW audio device support to bypass upper lever HP
audio server routines.
+ QT: minor bug in Gray Colormap generation.
+ DL: animation format thrown back in and now allows it to
be readable from the file.
+ IFF: Anim8 support written by Garrick Meeker.
+ Added Quiet flag(+q) to prevent XAnim title from being
printed out to tty. Useful when called in background by
another program.
+ AUDIO: fixed bug where anims without audio prevent following
anims with audio from enabling that audio.
+ AUDIO: Fixed scaling bug in ADPCM audio code. Affected main 8khz
machines.
+ Fixed compile bug when compiling without Remote Control Window.
+ cleaning and simplifying internal structures. reducing global
variables, etc.
--------------------------------------------------------------
Configuring For Your Machine
--------------------------------------------------------------
You'll need to edit the Makefile or the Imakefile. Go to the Audio
section and uncomment out the DEFINE's associated with your machine
type. Make sure no other machine's DEFINE's are uncommented. That
would be bad.
NOTE: Below needs to be updated for various machines and is
definitely incomplete, but may also be out-of-date.
--------------------------------------------------------------
Sun Sparc Specific Info
--------------------------------------------------------------
IF YOUR ARE USING OPENWINDOWS THEN YOU MUST USE Makefile.unx
AND YOU MUST EDIT THE CHANGES REQUIRED. This is because of
bugs/deficiencies with the OpenWindows Athena libraries.
See top of Makefile.unx for more details.
Having some problems with gcc, because it wants to use it's
own include files and they're usually wrong(or out of date).
Use cc if this happens.
If you are using Solaris, use the -DSOLARIS define in the Makefile.
--------------------------------------------------------------
Linux(soundcard) Specific Info
--------------------------------------------------------------
Compiles and runs on 8 bit and 16 bit sound cards(sound driver 2.5 and 2.99).
Some video/audio syncing problem with driver 2.5 that got better with 2.99.
--------------------------------------------------------------
SGI Specific Info
--------------------------------------------------------------
NEWSFLASH. The audio stuff should be included now in Irix 5.3. You
might be able to obtain them for free if you have the Irix 5.1 or
Irix 5.2 releases, but that's just a rumor.
If you have Irix 5.1 or greater then make sure you have installed
the digital media development subsystem (dmedia_dev.sw.audio) off
of the CD-ROM.
If this isn't on your CD_ROM then read on...
"according to the 5.2 readme first page, it says
that the Audio Development software has been moved from
the IDO to a purchasable option, IRIS media libraries. "
And you either have to contact SGI and buy it($495) OR
In the meantime, you can compile XAnim on an Irix 4.0.5 machine
and the XAnim binary should work back on the original Irix 5.1
or 5.2 machine.
Once XAnim audio is stablized on SGI's, I should be able to provide
an xanim executable. NOTE: I don't have nor can I legally distribute
the SGI audio libraries and include files.
--------------------------------------------------------------
HP Specific Info
--------------------------------------------------------------
Written and getting better, but still has a ways to go.
With HP's you need to start up the system Audio Server before
you can use ANY audio program. Here's how(from the Audio.man
page on an HP 700/915):
Step 1. Start the NCS Local Location Broker Daemon.
Task 1. If you are not already superuser, log in as
superuser.
Task 2. Enter the command line /usr/etc/ncs/llbd&&&&.
To make llbd start automatically at boot
time, edit the file /etc/netncsrc and change
the line START_LLBD=0 to START_LLBD=1.
Step 2. Reboot.
Step 3. Set the AUDIO environment variable to specify the node
where the audio client should look for the audio
server. If AUDIO is not set or if it is set to :0, the
client connects with a server on the same node.
To specify that the client should connect to a server
on another node, set
AUDIO = node_name: (Korn, Bourne, and POSIX
shells)
export AUDIO
or
setenv AUDIO node_name: (C shell)
Step 4. Normally, the audio server starts whenever the system
is booted. Check for the existence of the Aserver
processes by typing
ps -e | grep Aserver
You should see two Aserver processes. If the server is not
running, start the audio server by hand by typing
/usr/audio/bin/Aserver
Then type
ps -e | grep Aserver
and check that there are two active server processes.
--------------------------------------------------------------
IBM RS6000 Specific Info
--------------------------------------------------------------
Waiting for feedback on how it works.
--------------------------------------------------------------
AudioFile (AF) Specific Info
--------------------------------------------------------------
I haven't brought up AF yet on my machine, but have gotten
reports that it works okay.
--------------------------------------------------------------
Net Audio (NAS) Specific Info
--------------------------------------------------------------
I have brought NAS up on my machine and have fine tuned it. NAS
has some deficiencies that make it difficult to keep audio/video
in sync. Hopefully they'll improve it and likewise I'll improve
my understanding of it and work from there.
--------------------------------------------------------------
Any comments, questions, bugs, fixes, etc email me at
podlipec@wellfleet.com or podlipec@shell.portal.com
If you make changes to the audio code, please send entire
xanim_audio.c file unless the patches are minor.
--------------------------------------------------------------